C++中字符串与数值转换(超详细)

您所在的位置:网站首页 string转成char *的函数 C++中字符串与数值转换(超详细)

C++中字符串与数值转换(超详细)

2023-09-01 15:56| 来源: 网络整理| 查看: 265

文章目录 一、使用stringstream(简单粗暴)1.stringstream2.istringstream和ostringstream 二 使用函数1 字符串转成数值3.char数组转换成数值3.数值转换为字符串 三 总结 下面会介绍两种字符串和数值相互转换方法:stringstream和函数

一、使用stringstream(简单粗暴)

C++中有ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含sstream头文件

下面是这几个类的继承关系图: 在这里插入图片描述

1.stringstream #include #include using namespace std; int main() { int i = 1; float f = 1.2; double d = 1.23; //number => string stringstream ss1; ss1 string str = "123.345"; int i = stoi(str); float f = stof(str); double d = stod(str); cout char szNumbers[] = "2001 60c0c0 -1101110100110100100000 0x6fffff"; char * pEnd; long int li1, li2, li3, li4; li1 = strtol(szNumbers, &pEnd, 10); li2 = strtol(pEnd, &pEnd, 16); li3 = strtol(pEnd, &pEnd, 2); li4 = strtol(pEnd, NULL, 0); printf("The decimal equivalents are: %ld, %ld, %ld and %ld.\n", li1, li2, li3, li4); system("pause"); return 0; } //输出 60c0c0(16) = 6340800(10) -1101110100110100100000(2) = -3624224(10) 0x6fffff(0自己识别) = 7340031 (10) The decimal equivalents are: 2001, 6340800, -3624224 and 7340031 3.数值转换为字符串

#include头文件中:inline string to_string(val); 具体如下:

string to_string (int val); string to_string (long val); string to_string (long long val); string to_string (unsigned val); string to_string (unsigned long val); string to_string (unsigned long long val); string to_string (float val); string to_string (double val); string to_string (long double val); #include #include using namespace std; int main() { int i = 1; float f = 1.2; double d = 1.23; cout


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3